package memento;

/**
 * @Author: Ma JiBin
 * @Email: 1423553596@qq.com
 * @Date: 2018/9/12 15:47
 * @Description: 在 Memento 对象中存储状态
 */
public class Originator {
    private String state;

    public void setState(String state) {
        this.state = state;
    }

    public String getState() {
        return state;
    }

    /**
     * 将对象状态保存到Memento中
     * 一个状态保存到一个Memento对象中
     * @return
     */
    public Memento saveStateToMemento() {
        return new Memento(state);
    }

    /**
     * 从Memento中获取对象状态，并恢复到对象中
     *
     * @param Memento
     */
    public void getStateFromMemento(Memento Memento) {
        state = Memento.getState();
    }
}